KFE 第48期

一周推荐

浏览器进程?线程?傻傻分不清楚!

进程(process)是操作系统分配资源的最小单位,是应用程序运行的载体

线程(thread)是程序执行的最小单位。

一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线。

进程 线程 浏览器内核多线程

事件循环机制的那些事

这一次,彻底弄懂 JavaScript 执行机制

浏览器内核中有多个进程在同步工作,主要是Browser进程和Render进程。

Browser进程主要负责页面管理以及管理其他进程的创建和销毁等,常驻的线程有GUI渲染线程、JS引擎线程、事件触发线程、定时器触发线程、HTTP请求线程

Render进程主要负责页面的渲染、JS执行以及事件的循环。

程序执行任务可以分为同步任务和异步任务,异步任务包括宏任务(script(全局任务), setTimeout, setInterval, setImmediate, I/O, UI rendering)和微任务(process.nextTick, Promise.then(), Object.observe, MutationObserver)

同步任务 异步任务 宏任务 微任务

深入理解js事件循环机制(Node.js篇)

详解JavaScript中的Event Loop(事件循环)机制

Node事件循环机制有6个阶段:timer、I/O callbacks、idle prepare、poll、check、close callbacks。每个阶段都有一个任务队列,执行该阶段的任务队列,直到队列清空或执行的回调达到系统上限后,才会转入下一个阶段,进入下一个阶段之前,执行microtask队列的所有任务。顺序执行一次后就叫一个tick。

注:运行环境中的各种复杂的情况会导致在同步队列里两个方法的顺序随机决定

Node

算法

拼写单词

矩形重叠

土味来一波

“先生你要点什么?”

“我想点开你的心。”

文章整理来自互联网,不作商业用途,如侵权,请联系删除